package com.piggy.logi.sys.service;

import com.piggy.common.core.web.page.IServicePlus;
import com.piggy.common.core.web.page.TableDataInfo;
import com.piggy.logi.sys.bo.LogiMarginAddBo;
import com.piggy.logi.sys.bo.LogiMarginEditBo;
import com.piggy.logi.sys.bo.LogiMarginQueryBo;
import com.piggy.logi.sys.bo.LogiMarginUserQueryBo;
import com.piggy.logi.sys.domain.LogiMargin;
import com.piggy.logi.sys.vo.LogiMarginUserVo;
import com.piggy.logi.sys.vo.LogiMarginVo;

import java.util.List;

/**
 * 保证金Service接口
 *
 * @author fengxy
 * @date 2023/10/17 21:52
 **/
public interface ILogiMarginService extends IServicePlus<LogiMargin> {

    /**
     * 查询保证金列表
     */
    TableDataInfo<LogiMarginVo> queryPageList(LogiMarginQueryBo bo);

    /**
     * 获取保证金详情
     */
    LogiMarginVo queryById(Long id);

    /**
     * 缴纳保金
     **/
    void insertByAddBo(LogiMarginAddBo bo);

    /**
     * 退回保金
     **/
    void refund(LogiMarginEditBo bo);

    /**
     * 冻结保金
     **/
    void freeze(Long id);

    /**
     * 解冻保金
     **/
    void thaw(Long id);

    /**
     * 查询保证金用户列表
     */
    List<LogiMarginUserVo> userList(LogiMarginUserQueryBo bo);
}
